package com.bskj.sj.service;

import java.util.Date;
import java.util.List;

import com.bskj.common.bean.model.BmsUser;
import com.bskj.common.bean.model.ShopCoupon;
import com.bskj.sj.bean.vo.resp.UserCouponRecordRespVo;
import com.bskj.sj.bean.vo.resp.UserCouponReleaseRespVo;

/**
 * Created by mocaijin on 21/01/2018.
 */
public interface IShopCouponService extends IBaseService<ShopCoupon> {

    public void add(ShopCoupon shopCoupon) throws Exception;

    public void insert(BmsUser BmsUser) throws Exception;

    public BmsUser getByCustId(int custId) throws Exception;

    public List<ShopCoupon> get(ShopCoupon shopCoupon) throws Exception;

    List<ShopCoupon> getShopCoupons(ShopCoupon shopCoupon, Integer page, Integer defaultPageSzie) throws Exception;

    public List<UserCouponReleaseRespVo> getDailyReleases(Integer parkingLotCustomerId, Date beginDate, Date endDate,BmsUser bmsUser) throws Exception;

    public List<UserCouponReleaseRespVo> getDailyTotal(Integer shopId,Integer type,Integer parkingLotCustomerId, Date beginDate, Date endDate) throws Exception;
    
    public Date getValidDate(Integer id) throws Exception;
    
    public List<UserCouponRecordRespVo> getShopReleases(Integer parkingLotCustomerId, Date beginDate, Date endDate,BmsUser bmsUser) throws Exception;
    
    public List<UserCouponReleaseRespVo> getCouponLimitMoney(Integer shopId, Integer parkingLotCustomerId,Date endDate) throws Exception;
    
    public Integer getCouponMoney(Integer couponId)throws Exception;
    
}
